NOTE

1.14 Elasticsearch merge

1. 什么是merge - Elasticsearch中shard就是Lucene Index,而Lucene Index由segments组成 - 这个segment是不可变的,merge操作就是把多个小的segment合并成一个大的 2. 为什么需要merge - 每次refresh都会生成一个

Elasticsearch / Search创建于 更新于 historical

这是历史学习笔记,可能存在过时或不完整的理解。

1. 什么是merge

  • Elasticsearch中shard就是Lucene Index,而Lucene Index由segments组成
  • 这个segment是不可变的,merge操作就是把多个小的segment合并成一个大的

2. 为什么需要merge

  • 每次refresh都会生成一个小的segment,随着时间推移segment会越来越多,而每次search时都需要扫描所有的segment,这会导致查询效率降低
  • 执行物理删除Elasticsearch数据读写流程.md(原链接已失效)

3. merge触发时机

3.1. 自动

3.2. 手动

POST /my-index-000001/_forcemerge
POST /my_index/_optimize?max_num_segments=1

4. merge过程

5. 参考